package com.chatplus.application.service.file;

import com.chatplus.application.domain.entity.file.SysOssEntity;
import com.chatplus.application.domain.vo.file.UpLoadFileVo;
import com.chatplus.application.enumeration.FileChannelEnum;
import com.chatplus.application.file.FileAutoConfiguration;
import org.springframework.web.multipart.MultipartFile;

import java.io.InputStream;

/**
 * 文件服务接口
 */
public abstract class FileService {

    protected final FileAutoConfiguration.FileProperties fileProperties;
    protected FileService(FileAutoConfiguration.FileProperties fileProperties) {
        this.fileProperties = fileProperties;
    }
    /**
     * 文件上传
     */
    public abstract UpLoadFileVo uploadFile(MultipartFile scrFile);
    public abstract InputStream getInputStream(Long ossId);
    public abstract SysOssEntity getByHashId(String hashId);
    public abstract FileChannelEnum getUploadChannel();

}
